2014IT鐵人賽-11-使用者管理
今天一樣使用 EasyCloud 雲端簡單龍的帳戶, 那就登入 https://gemini.nchc.org.tw/ 來開始練習openSUSE 基礎指令吧.
今天練習使用者管理, 來新增或是管理使用者吧 ^^
筆記部份:
在 linux 內, 使用者是透過 UID 來辨認
UID
root 0
系統帳號 100-499 ( 參考/etc/login.defs )
一般使用者 >= 1000 (以redHat系列來說 >= 500)
所以如果有 UID 為0 的使用者, 不管名稱為何, 都可以管理系統喔!!
我們可以透過 useradd 來新增使用者, 新增的時候會跟下列設定有關
使用 useradd 新增使用者
-m 建立家目錄
/etc/default/useradd 決定相關設定( HOME, SHELL ..)
/etc/login.defs 決定相關設定( UID,GID .. )
於 /etc/passwd ( 帳號資料庫)新增一筆資料
於 /etc/shadow ( 密碼資料庫)新增一筆資料
如果有 -m 選項, 建立家目錄並且把/etc/skel下的檔案複製到使用者家目錄
根據/etc/default/useradd 加入指定群組於 /etc/group, 設定主要群組於/etc/passwd
/etc/passwd 是帳號資料庫, 以冒號為區隔符號, 共7個欄位.
/etc/passwd 帳號資料庫
john:x:1001:100::/home/john:/bin/bash
帳號:使用密碼:UID:GID:註解:家目錄:Shell
/etc/shadow 是存放密碼雜湊值的地方, 一樣以冒號為區隔符號, 目前先觀察兩個欄位
/etc/shadow 密碼資料庫
max:$2a$05$1X/4up2NsF30bP9Th2yRVOL.5AlWLbD/uV744bLbsxmdPxfizc6HO:14188:0:99999:7:::
帳號名稱:加密過後的密碼::
可以使用passwd 變更自己或是別人的密碼( 只有root 可以變更別人的密碼)
root 變更密碼沒有限制
一般使用者變更密碼有限制
可以使用userdel 來刪除使用者, -r 連同家目錄及信箱都要刪除
開始練習吧
Lab: 新增使用者
#useradd -m john <-m建立家目錄;新增使用者john>
#tail -n 2 /etc/passwd <請觀察資訊>
#grep 100 /etc/group <請觀察資訊>
#tail -n 2 /etc/shadow <請觀察資訊>
#ls -a /etc/skel <請觀察資訊>
#ls -a /home/john <請觀察資訊>
Lab: 設定密碼
#passwd <變更密碼>
#tail -n 2 /etc/shadow <請觀察資訊>
#passwd john <變更使用者john的密碼>
#tail -n 2 /etc/shadow <請觀察資訊>
#su - john <切換使用者身份為john>
>passwd <變更密碼,請觀察與root的差異>
>passwd root
>exit
#echo john:1234
#echo john:1234 | chpasswd john <以非互動的方式變更密碼>
Lab: userdel
userdel 與 userdel -r的差異為?
-r 會刪除使用者家目錄及信箱
#useradd -m test <-m建立家目錄;新增使用者test>
#echo test:1234 | chpasswd test <設定使用者 test密碼為1234>
測試是否可以登入
當使用者離職
1.鎖定該帳戶
#tail -n 2 /etc/shadow <請觀察資訊>
#usermod -L test <鎖定使用者帳戶, -L 鎖定, -U解除>
#tail -n 2 /etc/shadow <在密碼前加上!, 為鎖定>
2.刪除使用者帳戶
#userdel test <刪除使用者帳號>
#ls -l /home <請觀察資訊>
3.將其帳戶移轉到 /root
#mv /home/test /root
#chown -R root.root /root/test <改變擁有者及群組為root>
Fun with Day 11 ~